package com.jiutian.cmsskitdev.utils;

import javafx.application.Platform;
import javafx.scene.control.Alert;
import javafx.scene.control.ButtonType;
import javafx.stage.Stage;

import java.util.Optional;

/**
 * @author: Jerryzaj
 * @description TODO
 * @date: 2024/5/27 16:19
 */
public class WindowsUtils {

    public static void validaClose(Stage stage){
        Platform.setImplicitExit(false);    // 取消操作系统默认退出事件，点击关闭后系统不结束运行
        stage.setOnCloseRequest(event -> {	// 点击右上角关闭触发事件
            event.consume();    // 取消关闭窗口动作，点击关闭后不会关闭窗口
            Alert alert = new Alert(Alert.AlertType.CONFIRMATION);  // 弹出确认框
            alert.setTitle("退出程序");
            alert.setHeaderText(null);
            alert.setContentText("确认是否要退出程序？");
            Optional<ButtonType> result = alert.showAndWait();
            if (result.get() == ButtonType.OK) {    // 点击确定按钮
                Platform.exit();    // 退出程序
                //System.exit(0);
                //stage.close(); // 仅关闭窗口，不退出程序
            }
        });
    }
}
